From 502a3a138bfd62e1998710e38a73aabc9f929a59 Mon Sep 17 00:00:00 2001
From: Derek Lesho <dlesho@codeweavers.com>
Date: Fri, 17 Apr 2020 11:34:16 -0500
Subject: [PATCH] asfdemux: Only forward SEEK event when in push mode.

---
 gst/asfdemux/gstasfdemux.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/gst/asfdemux/gstasfdemux.c b/gst/asfdemux/gstasfdemux.c
index 6a6e3876..fa8ec4f7 100644
--- a/gst/asfdemux/gstasfdemux.c
+++ b/gst/asfdemux/gstasfdemux.c
@@ -672,11 +672,6 @@ gst_asf_demux_handle_seek_event (GstASFDemux * demux, GstEvent * event)
     return FALSE;
   }
 
-  /* upstream might handle TIME seek, e.g. mms or rtsp, or not, e.g. http,
-   * so first try to let it handle the seek event. */
-  if (gst_pad_push_event (demux->sinkpad, gst_event_ref (event)))
-    return TRUE;
-
   if (G_UNLIKELY (demux->seekable == FALSE || demux->packet_size == 0 ||
           demux->num_packets == 0 || demux->play_time == 0)) {
     GST_LOG_OBJECT (demux, "stream is not seekable");
@@ -707,6 +702,11 @@ gst_asf_demux_handle_seek_event (GstASFDemux * demux, GstEvent * event)
   next = after && !before;
 
   if (G_UNLIKELY (demux->streaming)) {
+    /* upstream might handle TIME seek, e.g. mms or rtsp, or not, e.g. http,
+    * so first try to let it handle the seek event. */
+    if (gst_pad_push_event (demux->sinkpad, gst_event_ref (event)))
+        return TRUE;
+
     /* support it safely needs more segment handling, e.g. closing etc */
     if (!flush) {
       GST_LOG_OBJECT (demux, "streaming; non-flushing seek not supported");
-- 
2.24.1

